package com.steve.summary.seata.service;

import com.steve.summary.seata.entity.Storage;

/**
 * @Author: STEVE
 * @Description: 库存服务接口
 * @since: 2025-07-08
 */
public interface StorageService {

    /**
     * 扣减库存
     *
     * @param productId 商品ID
     * @param count     扣减数量
     */
    void decrease(String productId, Integer count);

    /**
     * 查询商品库存
     *
     * @param productId 商品ID
     * @return 库存信息
     */
    Storage getByProductId(String productId);

    /**
     * 恢复库存
     *
     * @param productId 商品ID
     * @param count     恢复数量
     */
    void increase(String productId, Integer count);

}
